/*
 * @Company: TSBVN
 * @Author: marcusbui
 * @Revision: May 12, 2011
 */
package tsb.com.html5.comment.service;

import java.util.List;

import tsb.com.html5.comment.item.CommentItem;
import tsb.com.html5.comment.param.GetCommentParam;
import tsb.com.html5.comment.param.ProcessCommentParam;

/**
 * The Interface ICommentService.
 */
public interface ICommentService{
	
	/**
	 * Gets the comment.
	 *
	 * @param parm the parm
	 * @return the comment
	 * @throws Throwable the throwable
	 */
	public List<CommentItem> getComment(GetCommentParam parm) throws Exception;
	
	/**
	 * Gets the comment by id.
	 *
	 * @param parm the parm
	 * @return the comment by id
	 * @throws Throwable the throwable
	 */
	public CommentItem getCommentById(GetCommentParam parm) throws Exception;
	
	/**
	 * Process comment.
	 *
	 * @param parm the parm
	 * @return true, if successful
	 * @throws Throwable the throwable
	 */
	public boolean processComment(ProcessCommentParam parm) throws Exception;
	
	/**
	 * Creates the comment.
	 *
	 * @param parm the parm
	 * @return the comment item
	 * @throws Throwable the throwable
	 */
	public CommentItem createComment(CommentItem parm) throws Exception;

	/**
	 * Delete comment.
	 *
	 * @param parm the parm
	 * @return true, if successful
	 * @throws Throwable the throwable
	 */
	public boolean deleteComment(CommentItem parm) throws Exception;

	/**
	 * Update comment.
	 *
	 * @param parm the parm
	 * @return true, if successful
	 * @throws Throwable the throwable
	 */
	public CommentItem updateComment(CommentItem parm) throws Exception;
	
}
